Failover is the capability to switch over automatically to a redundant or standby network upon the failure or abnormal termination of a previously active network. There is a general uncertainty surrounding failover in a converged environment, where convergence refers to the combining of real-time applications such as voice and video with data applications over a unified connection, or access method. The uncertainty is the survivability of both the real-time and data applications during primary network failure conditions.
As real-time voice, video and data services are converged, businesses require continuity to support their networking needs. For example, networks must failover to backup connections with minimal or no loss data or live voice over internet protocol (“VoIP”) calls. However, prior art shows this goal is difficult to achieve, as existing prior art has failed to provide a system within which minimal or no loss occurs.
Some current prior art failover technologies do support the survivability of data applications during network failover provided that the application's timeout value exceeds the failover time. However, these technologies do not support survivability under failover conditions of real-time applications, such as live VoIP calls, due to lengthy timing issues and the nature of VoIP being comprised of UDP/connectionless traffic states. The connectionless nature of the VoIP application does not provide any error checking or retransmission to maintain the application state during the lengthy failover condition. Furthermore, unstable lower link connections may further impede network failover and compound the loss of data under failover conditions experienced by prior art technologies.
Some existing prior art Internet access methods combine the use of multiple access methods to deliver a unified network connection for the transport of VoIP calls, video over IP, and burst type data applications. However, in the event of a lower link network failure, the prior art currently cannot support the survivability of real-time applications such as live VoIP calls during a failover condition.
Mainly existing prior art focuses upon the area of link failover, especially in the TCP/IP area (e.g. Link2Web protocols, etc.). Such prior art does not provide any solution to separating false positive from true positive failure detections. This limits the results that the prior art technologies can achieve.
Existing prior art examples directed to network failover solutions for TCP/IP (as referred to above), are essentially based on timers. For example, timers are typically used to define an interval for one peer signalling to another peer to verify that the communication session between them has not ceased. The signal may be a ping message or other keep alive or heartbeat message. If there is no response from the second peer to the first peer, then the first peer assumes that the communication session has ceased. Upon assuming a communication session has ceased a new pathway is selected (i.e. the communication is sent to another network component). Clearly, this technique requires the primary pathway to have already failed before a switch to a secondary pathway can occur. Due to the restrictions defined by the timers, in certain circumstances the pathway sometimes cannot be changed quickly enough to avoid a connection loss that is noticeable to client devices at the network end points.
Some prior art also attempts to address the bi-directional nature of voice communication. As an example, some prior art synchronizes the timers, and then subsequently synchronizes transfer of the communication to another pathway. However, these techniques also require that the primary pathway fail before the secondary pathway is used.
Generally, the prior art approaches have a number of disadvantages, including most significantly, (1) significant false positives (particularly if there is significant network congestion), and (2) a higher likelihood of dropped calls in the VoIP context because there is no solution for providing adequate control of the remote network component, such that the connection may terminate prior to deactivation of the remote network component.
An example of prior art affected by false positive error detection is disclosed in U.S. Pat. No. 7,269,157 to Klinker (“Klinker”). Klinker is focused on connectivity verification and/or traffic analysis. Klinker observes packet flow based on the type of traffic (i.e. HTTP, voice etc.) between two components in a network. Klinker lacks contemplation of: (1) an overall architecture that enables control of transportation at all peers; and (2) the collection of enough information to support selection of a new path in time to avert a communication failure. The latter point which is essential to failover capable of supporting real-time applications. The Klinker invention in application is therefore limited to analyzing traffic flow.
Klinker is also specific to Border Gateway Protocol (“BGP”), which is a known prior art approach to communication pathways. In many ways Klinker is an enhancement of certain aspects of BGP. If one removes the known BGP elements from Klinker what is left is essentially a device that is operable to check if another end point is alive. This type of invention is essentially taught by U.S. Pat. No. 6,078,957 to Adelmann.
Additionally, prior art, and ICMP prior art in particular, generally uses higher network layer mechanisms. The higher network layer mechanisms are generally more dependent on traffic, and consequently false positives may result in the presence of congestion (i.e. identification of increased traffic as performance degradation). This can result in reliance on erroneous information for failover purposes, which creates an inefficient system.